package com.example.demo1.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.example.demo1.common.BtException;
import com.example.demo1.dao.UserDAO;
import com.example.demo1.entity.Project;
import com.example.demo1.entity.User;
import com.example.demo1.service.UserService;
import com.mysql.cj.util.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.Date;
import java.util.HashMap;
import java.util.Map;

@Service
public class UserServiceImpl implements UserService {
    @Autowired
    UserDAO userDAO;

    /**
     * 判断用户是否存在，存在则返回true，不存在则返回false
     * @param username 用户名
     * @param password 用户密码
     * @return true,false
     * */
    public boolean isUserExist(String username,String password) {
        //创建对象，泛型里加上实体对象
        QueryWrapper<User> wrapperUser=new QueryWrapper<>();
        //先创建一个hashmap，然后把多个案例put进去，再调用allEq
        Map<String,Object> map=new HashMap<>();
        map.put("username",username);
        map.put("password",password);
//        设置查询条件
        wrapperUser.allEq(map);
//        调用方法查询一个返回记录
        int count=userDAO.selectCount(wrapperUser);
        if(count>=1){
            return true;
        }else {
            return false;
        }
    }

    public int addUser(User user) {
        if(StringUtils.isNullOrEmpty(user.getUsername())){
            BtException.throwException("用户名为空");
        }
        QueryWrapper<User> wrapperUser = new QueryWrapper<>();
        wrapperUser.eq("username",user.getUsername());
        if(userDAO.selectCount(wrapperUser)!=0){
            BtException.throwException("用户已存在");
        }
        return userDAO.insert(user);
    }
}
